package com.lancoo.answer.model.entity;

import com.lancoo.answer.model.ConstantBean;
import com.lancoo.answer.model.TaskState;
import com.lancoo.answer.widget.audioPlayView.MediaEngine;

/**
 * Created by pengmi on 2021/11/30 14:48
 * Description:
 */
public class TaskControlBean {

    //用户ID 2-学生 ，1-老师
    private int userType = 2;
    //默认加载题型Index
    private int loadTypIndex = -1;
    //默认加载大题Index
    private int loadQuesIndex = -1;
    //默认加载小题Index
    private int loadChildIndex = -1;
    //默认加载答题点Index
    private int loadItemIndex = -1;
    //默认是否去到导语界面 默认false
    private boolean isLoadToLead;
    //是否可以识别作答 0-关闭，1-打开
    private int recordAnswer = 1;
    //是否可以图片作答 0-关闭，1-打开
    private int imageAnswer = 1;
    //是否可以文本作答 0-关闭，1-打开
    private int txtAnwer = 0;
    //是否可以视频作答 0-关闭，1-打开
    private int videoAnwer = 0;
    //是否关闭试题导语 0-关闭，1-打开
    private int isCloseTypeLeader = 1;
    //是否可以作答 0-关闭，1-打开
    private int enableAnwer = 1;//
    //是否可以自动播放音频 0-关闭，1-打开
    private int enableAutoPlay = 0;//是否自动播放 专业化专用
    //是否关闭答题卡提交按钮 0-关闭，1-打开
    private int isCloseAnswerSheetSubmitBtn = 1;
    //默认关闭大题题干标记知识点功能，0-关闭，1-打开
    private int isOpenLighTabToBody = 0;
    //默认打开最后一道题继续切换弹出答题卡，去提交，0-关闭，1-打开
    private int isAutoShowSubmitBtn = 1;
    //是否是人工组卷 课后作业专用
    private boolean isManu;
    //是否是互评 课后作业专用
    private boolean isHp;
    //是否开启作弊作答，默认关闭
    private boolean isOpenZuobiAnswer;
    //是否是训练状态 过关训练专用
    private boolean isTraining = true;
    //默认练习模式，0-练习，1-普通考试，2-等级考试，3-高职
    private int trainSence = 0;


    private MediaEngine mediaEngine;
    //媒体作答（音频，图片）存储方式 1-存储的网络路径，对接时需通过eventBus进行试题内外通信 0-本地文件路径存储
    private int mediaAnswerSaveType = 1;
    //点击提交后是否显示确认弹窗，默认显示（全部作答也不显示，与ios一致）
    private int isShowSubmitConfirmDialog = 1;
    //AI考试专用 考试要求字段
    private ExamRequireBean examRequireBean;
    //设置答题卡高度 px
    private int answerSheetDialogHeight;
    //大题音频是否处于播放状态 ，作答时用于控制选择题是否作答完后自动跳入下个小题
    private boolean isQuesAudioPlaying = false;
    //通过答题卡定位试题是否平滑切换
    private boolean isSmoothScrollPaperFromAnswerSheet = true;
    //设置分屏上下高度偏量（范围0-1） 教材，教案使用
    private float splitHeigthDeviation = 0f;
    //主观题查看评阅得分显示 默认0（0-显示得分，1-显示得分率） 考辅同类题使用
    private int showLookingScoreType = 0;
    // 考试口语题作答逻辑外包
    private SpokenChildState spokenChildState;
    // 是否隐藏答题卡题型名称  默认不隐藏 考辅同类题用
    private boolean isHideAnswerSheetTypeName = false;
    //答题卡名称
    private String answerSheetName;
    //是否允许自动切下一题 默认true 考试专用
    private boolean enableAutoSkipAnswer = true;
    //考试专用字段，0-高职A卷，1-高职B卷,2-高职普通卷,3导入试卷
    private int paperType = 0;
    //考辅专用，判断试卷是否是过期状态
    private Boolean isExpired = false;

    private boolean isHideLeadPagerScore;
    //是否 关闭音频，图片识别作答
    private boolean isCloseMediaAnswer;

    //是否关闭划线
    private boolean forceCloseDash;

    public boolean isForceCloseDash() {
        return forceCloseDash;
    }

    public void setForceCloseDash(boolean forceCloseDash) {
        this.forceCloseDash = forceCloseDash;
    }

    public Boolean getExpired() {
        return isExpired;
    }

    public void setExpired(Boolean expired) {
        isExpired = expired;
    }

    public void setHp(boolean hp) {
        isHp = hp;
    }

    public boolean isHp() {
        return isHp;
    }

    public void setManu(boolean manu) {
        isManu = manu;
    }

    public boolean isManu() {
        return isManu;
    }

    public int getUserType() {
        return userType;
    }

    public void setUserType(int userType) {
        this.userType = userType;
    }

    public TaskState getTaskState() {
        return ConstantBean.getTaskState();
    }

    public void setTaskState(TaskState taskState) {
        ConstantBean.setTaskState(taskState);
    }

    public int getLoadTypIndex() {
        return loadTypIndex;
    }

    public void setLoadTypIndex(int loadTypIndex) {
        this.loadTypIndex = loadTypIndex;
    }

    public int getLoadQuesIndex() {
        return loadQuesIndex;
    }

    public void setLoadQuesIndex(int loadQuesIndex) {
        this.loadQuesIndex = loadQuesIndex;
    }

    public int getLoadItemIndex() {
        return loadItemIndex;
    }

    public void setLoadItemIndex(int loadItemIndex) {
        this.loadItemIndex = loadItemIndex;
    }

    public int getRecordAnswer() {
        return recordAnswer;
    }

    public void setRecordAnswer(int recordAnswer) {
        this.recordAnswer = recordAnswer;
    }

    public int getImageAnswer() {
        return imageAnswer;
    }

    public void setImageAnswer(int imageAnswer) {
        this.imageAnswer = imageAnswer;
    }

    public int getTxtAnwer() {
        return txtAnwer;
    }

    public void setTxtAnwer(int txtAnwer) {
        this.txtAnwer = txtAnwer;
    }

    public int getVideoAnwer() {
        return videoAnwer;
    }

    public void setVideoAnwer(int videoAnwer) {
        this.videoAnwer = videoAnwer;
    }

    public boolean isOpenZuobiAnswer() {
        return isOpenZuobiAnswer;
    }

    public void setOpenZuobiAnswer(boolean openZuobiAnswer) {
        isOpenZuobiAnswer = openZuobiAnswer;
    }

    public int getLoadChildIndex() {
        return loadChildIndex;
    }

    public void setLoadChildIndex(int loadChildIndex) {
        this.loadChildIndex = loadChildIndex;
    }

    public int getIsCloseTypeLeader() {
        return isCloseTypeLeader;
    }

    public void setIsCloseTypeLeader(int isCloseTypeLeader) {
        this.isCloseTypeLeader = isCloseTypeLeader;
    }

    public int getEnableAnwer() {
        return enableAnwer;
    }

    public void setEnableAnwer(int enableAnwer) {
        this.enableAnwer = enableAnwer;
    }

    public int getEnableAutoPlay() {
        return enableAutoPlay;
    }

    public void setEnableAutoPlay(int enableAutoPlay) {
        this.enableAutoPlay = enableAutoPlay;
    }

    public boolean isTraining() {
        return isTraining;
    }

    public void setTraining(boolean training) {
        isTraining = training;
    }

    public int getIsCloseAnswerSheetSubmitBtn() {
        return isCloseAnswerSheetSubmitBtn;
    }

    public void setIsCloseAnswerSheetSubmitBtn(int isCloseAnswerSheetSubmitBtn) {
        this.isCloseAnswerSheetSubmitBtn = isCloseAnswerSheetSubmitBtn;
    }

    public void setIsOpenLighTabToBody(int isOpenLighTabToBody) {
        this.isOpenLighTabToBody = isOpenLighTabToBody;
    }

    public int getIsOpenLighTabToBody() {
        return isOpenLighTabToBody;
    }

    public int getIsAutoShowSubmitBtn() {
        return isAutoShowSubmitBtn;
    }

    public void setIsAutoShowSubmitBtn(int isAutoShowSubmitBtn) {
        this.isAutoShowSubmitBtn = isAutoShowSubmitBtn;
    }

    public int getTrainSence() {
        return trainSence;
    }

    public void setTrainSence(int trainSence) {
        this.trainSence = trainSence;
    }


    public MediaEngine getMediaEngine() {
        return mediaEngine;
    }

    public void setMediaEngine(MediaEngine mediaEngine) {
        this.mediaEngine = mediaEngine;
    }

    public int getMediaAnswerSaveType() {
        return mediaAnswerSaveType;
    }

    public void setMediaAnswerSaveType(int mediaAnswerSaveType) {
        this.mediaAnswerSaveType = mediaAnswerSaveType;
    }

    public int getIsShowSubmitConfirmDialog() {
        return isShowSubmitConfirmDialog;
    }

    public void setIsShowSubmitConfirmDialog(int isShowSubmitConfirmDialog) {
        this.isShowSubmitConfirmDialog = isShowSubmitConfirmDialog;
    }

    public ExamRequireBean getExamRequireBean() {
        return examRequireBean;
    }

    public void setExamRequireBean(ExamRequireBean examRequireBean) {
        this.examRequireBean = examRequireBean;
    }

    public int getAnswerSheetDialogHeight() {
        return answerSheetDialogHeight;
    }

    public void setAnswerSheetDialogHeight(int answerSheetDialogHeight) {
        this.answerSheetDialogHeight = answerSheetDialogHeight;
    }

    public boolean isQuesAudioPlaying() {
        return isQuesAudioPlaying;
    }

    public void setQuesAudioPlaying(boolean quesAudioPlaying) {
        isQuesAudioPlaying = quesAudioPlaying;
    }

    public boolean isSmoothScrollPaperFromAnswerSheet() {
        return isSmoothScrollPaperFromAnswerSheet;
    }

    public void setSmoothScrollPaperFromAnswerSheet(boolean smoothScrollPaperFromAnswerSheet) {
        isSmoothScrollPaperFromAnswerSheet = smoothScrollPaperFromAnswerSheet;
    }

    public float getSplitHeigthDeviation() {
        return splitHeigthDeviation;
    }

    public void setSplitHeigthDeviation(float splitHeigthDeviation) {
        this.splitHeigthDeviation = splitHeigthDeviation;
    }

    public int getShowLookingScoreType() {
        return showLookingScoreType;
    }

    public void setShowLookingScoreType(int showLookingScoreType) {
        this.showLookingScoreType = showLookingScoreType;
    }

    public boolean isLoadToLead() {
        return isLoadToLead;
    }

    public void setLoadToLead(boolean loadToLead) {
        isLoadToLead = loadToLead;
    }

    public SpokenChildState getSpokenChildState() {
        return spokenChildState;
    }

    public void setSpokenChildState(SpokenChildState spokenChildState) {
        this.spokenChildState = spokenChildState;
    }

    public boolean isHideAnswerSheetTypeName() {
        return isHideAnswerSheetTypeName;
    }

    public void setHideAnswerSheetTypeName(boolean hideAnswerSheetTypeName) {
        isHideAnswerSheetTypeName = hideAnswerSheetTypeName;
    }

    public String getAnswerSheetName() {
        return answerSheetName;
    }

    public void setAnswerSheetName(String answerSheetName) {
        this.answerSheetName = answerSheetName;
    }

    public boolean isEnableAutoSkipAnswer() {
        return enableAutoSkipAnswer;
    }

    public void setEnableAutoSkipAnswer(boolean enableAutoSkipAnswer) {
        this.enableAutoSkipAnswer = enableAutoSkipAnswer;
    }

    public int getPaperType() {
        return paperType;
    }

    public void setPaperType(int paperType) {
        this.paperType = paperType;
    }

    public boolean isHideLeadPagerScore() {
        return isHideLeadPagerScore;
    }

    public void setHideLeadPagerScore(boolean hideLeadPagerScore) {
        isHideLeadPagerScore = hideLeadPagerScore;
    }

    public boolean isCloseMediaAnswer() {
        return isCloseMediaAnswer;
    }

    public void setCloseMediaAnswer(boolean closeMediaAnswer) {
        isCloseMediaAnswer = closeMediaAnswer;
    }
}
